The Class Generator can now generate classes based on a DTD (embedded in a
document or external) or a Schema.  Two sample applications are provided,
one for each method.  A Makefile will build and run both examples, just
type 'make'.

The first example generates classes based on a DTD.  The components are:

    CG.cpp		Sample program using DTD-derived classes
    CG.xml		XML file using CG.dtd with dummy document
    CG.dtd		XML sample DTD

The classes are generated by feeding CG.xml (which references CG.dtd) to
the xmlcg program (in the provided bin directory), which generates the
classes into Sample.cpp and Sample.h (named by the DOCTYPE).

The generated classes plus top-level driver (CG.cpp) are compiled into the
program CG.  When run, CG uses the generated classes to build up an XML
document, then validates the document and writes it out (to Sample.xml).

The second example generates classes based on a Schema.  The components are:

    AQ.cpp		Sample program using Schema-dervied classes
    AQ.xsd		Sample schema

It is similar to the DTD example.  The classes are generated by running xmlcg
on the schema AQ.xsd to generate Queue.cpp and Queue.h.  They are compiled
along with AQ.cpp into the program AQ, which builds, validates, and writes
out Queue.xml.

	*	*	*	*	*	*	*	*

Command-line options to the provided class generator executable (xmlcg):

    -d <name>          DTD - input is external DTD (specify output name)
    -o <directory>     Output - specify output directory
    -e <encoding>      Encoding - specify input file encoding
    -h                 Help - show this usage help
    -v                 Version - show Class Generator version#
    -s <name>          Schema - input is an XML Schema (spec. output name)

When generating from a DTD, either a complete document (which includes or
references an external DTD) or an external DTD itself may be used as input.
For example:

	xmlcg -d Sample CG.dtd

which will generate the same classes as

	xmlcg CG.xml

An error message file is provided in the mesg subdirectory.  Currently, the
only message file is in English although message files for other languages
may be supplied in future releases.  You should set the environment variable 
ORA_XML_MESG to point to the absolute path of the mesg subdirectory.
Alternately, if you have an $ORACLE_HOME installed, you may copy the contents
of the mesg subdirectory to the $ORACLE_HOME/xdk/mesg directory.

In addition, the environment variable ORA_NLS33 must be set to point to the 
location of the NLS data files.  On Unix systems, this is usually 
$ORACLE_HOME/ocommon/nls/admin/data.  On Windows NT, this is usually 
$ORACLE_HOME/nlsrtl/admin/nlsdata.  Starting with version 9.0.1, C and C++ XDK
releases that are downloaded from OTN contain an nlsdata/ subdirectory.  You 
must set the environment variable ORA_NLS33 to the absolute path of the 
nlsdata/ subdirectory if you don't have an Oracle installation.
